32 research outputs found
An anytime tree search algorithm for the 2018 ROADEF/EURO challenge glass cutting problem
In this article, we present the anytime tree search algorithm we designed for
the 2018 ROADEF/EURO challenge glass cutting problem proposed by the French
company Saint-Gobain. The resulting program was ranked first among 64
participants. Its key components are: a new search algorithm called Memory
Bounded A* (MBA*) with guide functions, a symmetry breaking strategy, and a
pseudo-dominance rule. We perform a comprehensive study of these components
showing that each of them contributes to the algorithm global performances. In
addition, we designed a second tree search algorithm fully based on the
pseudo-dominance rule and dedicated to some of the challenge instances with
strong precedence constraints. On these instances, it finds the best-known
solutions very quickly
An anytime tree search algorithm for two-dimensional two- and three-staged guillotine packing problems
[libralesso_anytime_2020] proposed an anytime tree search algorithm for the
2018 ROADEF/EURO challenge glass cutting problem
(https://www.roadef.org/challenge/2018/en/index.php). The resulting program was
ranked first among 64 participants. In this article, we generalize it and show
that it is not only effective for the specific problem it was originally
designed for, but is also very competitive and even returns state-of-the-art
solutions on a large variety of Cutting and Packing problems from the
literature. We adapted the algorithm for two-dimensional Bin Packing, Multiple
Knapsack, and Strip Packing Problems, with two- or three-staged exact or
non-exact guillotine cuts, the orientation of the first cut being imposed or
not, and with or without item rotation. The combination of efficiency, ability
to provide good solutions fast, simplicity and versatility makes it
particularly suited for industrial applications, which require quickly
developing algorithms implementing several business-specific constraints. The
algorithm is implemented in a new software package called PackingSolver
Automatic Generation of Declarative Models For Differential Cryptanalysis
When designing a new symmetric block cipher, it is necessary to evaluate its robustness against differential attacks. This is done by computing Truncated Differential Characteristics (TDCs) that provide bounds on the complexity of these attacks. TDCs are often computed by using declarative approaches such as CP (Constraint Programming), SAT, or ILP (Integer Linear Programming). However, designing accurate and efficient models for these solvers is a difficult, error-prone and time-consuming task, and it requires advanced skills on both symmetric cryptography and solvers.
In this paper, we describe a tool for automatically generating these models, called Tagada (Tool for Automatic Generation of Abstraction-based Differential Attacks). The input of Tagada is an operational description of the cipher by means of black-box operators and bipartite Directed Acyclic Graphs (DAGs). Given this description, we show how to automatically generate constraints that model operator semantics, and how to generate MiniZinc models. We experimentally evaluate our approach on two different kinds of differential attacks (e.g., single-key and related-key) and four different symmetric block ciphers (e.g., the AES (Advanced Encryption Standard), Craft, Midori, and Skinny). We show that our automatically generated models are competitive with state-of-the-art approaches. These automatically generated models constitute a new benchmark composed of eight optimization problems and eight enumeration problems, with instances of increasing size in each problem. We experimentally compare CP, SAT, and ILP solvers on this new benchmark
Iterative beam search algorithms for the permutation flowshop
We study an iterative beam search algorithm for the permutation flowshop
(makespan and flowtime minimization). This algorithm combines branching
strategies inspired by recent branch-and-bounds and a guidance strategy
inspired by the LR heuristic. It obtains competitive results, reports many
new-best-so-far solutions on the VFR benchmark (makespan minimization) and the
Taillard benchmark (flowtime minimization) without using any NEH-based
branching or iterative-greedy strategy. The source code is available at:
https://gitlab.com/librallu/cats-pfsp
Conflict Optimization for Binary CSP Applied to Minimum Partition into Plane Subgraphs and Graph Coloring
CG:SHOP is an annual geometric optimization challenge and the 2022 edition
proposed the problem of coloring a certain geometric graph defined by line
segments. Surprisingly, the top three teams used the same technique, called
conflict optimization. This technique has been introduced in the 2021 edition
of the challenge, to solve a coordinated motion planning problem. In this
paper, we present the technique in the more general framework of binary
constraint satisfaction problems (binary CSP). Then, the top three teams
describe their different implementations of the same underlying strategy. We
evaluate the performance of those implementations to vertex color not only
geometric graphs, but also other types of graphs.Comment: To appear at ACM Journal of Experimental Algorithmic
Anytime tree search for combinatorial optimization
Les recherches arborescentes sont utilisées dans un grand nombre d'applications (MIP, CP, SAT, metaheuristiques avec Ant Colony Optimization et GRASP) et également dans des communautés IA/planning. Toutes ces techniques présentent des bases communes et de nombreuses techniques peuvent être transférées d'une communauté à une autre. Les résultats préliminaires indiquent que ces techniques sont très performantes comparé aux metaheuristiques généralement utilisés en recherche opérationnelle.Dans ces travaux, nous dressons un état de l'art et une classification de différentes techniques de recherche arborescente que l'on retrouve dans les metaheuristiques, dans les méthodes exactes et en IA/planning.Nous développons un framework générique qui permet l'élaboration rapide d'algorithmes de recherche arborescente.Enfin, nous utilisons ces techniques pour proposer des méthodes compétitives avec les metaheuristiques généralement utilisées en recherche opérationnelle. Nous présentons de nouvelles méthodes de recherche arborescente pour plusieurs problèmes d'optimisation combinatoire ainsi que de nouvelles meilleures solutions connues.Tree search algorithms are used in a large variety of applications (MIP, CP, SAT, metaheuristics with Ant Colony Optimization and GRASP) and also in AI/planning communities. All of these techniques present similar components and many of those components can be transferred from one community to another. Preliminary results indicate that anytime tree search techniques are competitive compared to commonly used metaheuristics in operations research.In this work, we detail a state of the art and a classification of the different tree search techniques that one can find in metaheuristics, exact methods and AI/planning. Then, we present a generic framework that allows the rapid prototyping of tree search algorithms. Finally, we use this framework to develop anytime tree search algorithms that are competitive with the commonly-used metaheuristics in operations research. We report new tree search applications for some combinatorial optimization problems and new best-known solutions
Recherches arborescentes anytime pour l'optimisation combinatoire
Tree search algorithms are used in a large variety of applications (MIP, CP, SAT, metaheuristics with Ant Colony Optimization and GRASP) and also in AI/planning communities. All of these techniques present similar components and many of those components can be transferred from one community to another. Preliminary results indicate that anytime tree search techniques are competitive compared to commonly used metaheuristics in operations research.In this work, we detail a state of the art and a classification of the different tree search techniques that one can find in metaheuristics, exact methods and AI/planning. Then, we present a generic framework that allows the rapid prototyping of tree search algorithms. Finally, we use this framework to develop anytime tree search algorithms that are competitive with the commonly-used metaheuristics in operations research. We report new tree search applications for some combinatorial optimization problems and new best-known solutions.Les recherches arborescentes sont utilisées dans un grand nombre d'applications (MIP, CP, SAT, metaheuristiques avec Ant Colony Optimization et GRASP) et également dans des communautés IA/planning. Toutes ces techniques présentent des bases communes et de nombreuses techniques peuvent être transférées d'une communauté à une autre. Les résultats préliminaires indiquent que ces techniques sont très performantes comparé aux metaheuristiques généralement utilisés en recherche opérationnelle.Dans ces travaux, nous dressons un état de l'art et une classification de différentes techniques de recherche arborescente que l'on retrouve dans les metaheuristiques, dans les méthodes exactes et en IA/planning.Nous développons un framework générique qui permet l'élaboration rapide d'algorithmes de recherche arborescente.Enfin, nous utilisons ces techniques pour proposer des méthodes compétitives avec les metaheuristiques généralement utilisées en recherche opérationnelle. Nous présentons de nouvelles méthodes de recherche arborescente pour plusieurs problèmes d'optimisation combinatoire ainsi que de nouvelles meilleures solutions connues
Mixed Integer Programming formulations for the balanced Traveling Salesman Problem with a lexicographic objective
This paper presents a Mixed Integer Program to solve the Balanced TSP. It exploits the underlying structure of the instances and is able to find optimal solutions for all the instances provided in the Metaheuristics Summer School competition. We study the efficiency of this new model on several variants of the Balanced TSP. The proposed method was ranked first in the MESS18 Metaheuristic competition among 9 submissions
An anytime tree search algorithm for two-dimensional two- and three-staged guillotine packing problems
[libralesso_anytime_2020] proposed an anytime tree search algorithm for the 2018 ROADEF/EURO challenge glass cutting problem (https://www.roadef.org/challenge/2018/en/index.php). The resulting program was ranked first among 64 participants. In this article, we generalize it and show that it is not only effective for the specific problem it was originally designed for, but is also very competitive and even returns state-of-the-art solutions on a large variety of Cutting and Packing problems from the literature. We adapted the algorithm for two-dimensional Bin Packing, Multiple Knapsack, and Strip Packing Problems, with two- or three-staged exact or non-exact guillotine cuts, the orientation of the first cut being imposed or not, and with or without item rotation. The combination of efficiency, ability to provide good solutions fast, simplicity and versatility makes it particularly suited for industrial applications, which require quickly developing algorithms implementing several business-specific constraints. The algorithm is implemented in a new software package called PackingSolver